package com.chenyue.cm.user.service;

import com.chenyue.cm.base.service.BaseServiceIface;
import com.chenyue.cm.user.domain.JdVerify;

/**
 * @author LBX
 */
public interface JdVerifyService extends BaseServiceIface<JdVerify> {

    /**
     * 身份证是否已使用
     *
     * @param cardNumber 身份证
     * @return 错误信息
     */
    String isBindCard(String cardNumber);

    /**
     * 根据用户id获取实名信息
     *
     * @param id 用户id
     * @return 实名信息
     */
    JdVerify getVerifyInfo(Integer id);

    /**
     * 保存实名信息 生成附带信息
     *
     * @param verify 实名信息
     *               身份证号 证件类型 身份证正面 身份证背面 营业执照 正反面+编号
     */
    void saveVerify(JdVerify verify);

    /**
     * 审核实名认证
     *
     * @param userId 用户id
     * @param state  审核状态
     * @param remark 审核备注
     */
    void checkVerify(Integer userId, Integer state, String remark);

    /**
     * 根据身份证正面获取身份证信息
     *
     * @param verify 身份证正反面
     * @return JdVerify 实名信息
     */
    JdVerify getInfo(JdVerify verify);

    /**
     * 根据营业执照获取编号
     *
     * @param verifyInfo 营业执照
     * @return 编号
     */
    JdVerify getBusInfo(JdVerify verifyInfo);
}